#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(int argc, const char *argv[])
{
	// 设置随机种子
	srand(time(NULL));

	// 获取随机数 [1, 100]
	int rand_num = rand() % 100 + 1;
	printf("我已经想好数字了 你可以开始猜了..\n");

	int input_num = 0;
	int count = 0;
	int range_max = 100;
	int range_min = 1;
#if 0
	while(1){
		printf("请输入你第%d次猜的数,范围[%d, %d]:", \
				++count, range_min, range_max);
		scanf("%d", &input_num); // 读取用户的输入
		if(input_num == rand_num){
			break;
		}else if(input_num < rand_num){
			printf("猜小了\n");
			range_min = input_num + 1; //更新一下范围
		}else if(input_num > rand_num){
			printf("猜大了\n");
			range_max = input_num - 1; //更新一下范围
		}
	}
#endif

#if 0
	printf("请输入你第%d次猜的数,范围[%d, %d]:", ++count, range_min, range_max);
	scanf("%d", &input_num); // 读取用户的输入
	while(input_num != rand_num){
		if(input_num < rand_num){
			printf("猜小了\n");
			range_min = input_num + 1; //更新一下范围
		}else if(input_num > rand_num){
			printf("猜大了\n");
			range_max = input_num - 1; //更新一下范围
		}
		printf("请输入你第%d次猜的数,范围[%d, %d]:", ++count, range_min, range_max);
		scanf("%d", &input_num); // 读取用户的输入
	}
#endif

#if 1
	do{
		printf("请输入你第%d次猜的数,范围[%d, %d]:", ++count, range_min, range_max);
		scanf("%d", &input_num); // 读取用户的输入
		// 判断用户的输入和随机数的大小
		if(input_num < rand_num){
			printf("猜小了\n");
			range_min = input_num + 1; //更新一下范围
		}else if(input_num > rand_num){
			printf("猜大了\n");
			range_max = input_num - 1; //更新一下范围
		}
	}while(input_num != rand_num);
#endif

	printf("恭喜你,猜对了!!!\n");

	return 0;
}
